From: Roger Pau Monné Date: Tue, 19 Jan 2016 15:06:31 +0000 (+0100) Subject: elfnotes: check phys_entry against UNSET_ADDR32 X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~1927 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22man:///%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22man:/?a=commitdiff_plain;h=c2ba8c24f34426c993afa841bf94d933d2461cd9;p=xen.git elfnotes: check phys_entry against UNSET_ADDR32 And introduce UNSET_ADDR32. Signed-off-by: Roger Pau Monné Acked-by: Jan Beulich Acked-by: Wei Liu --- diff --git a/tools/libxc/xc_dom_elfloader.c b/tools/libxc/xc_dom_elfloader.c index 2ae575e327..5039f3f000 100644 --- a/tools/libxc/xc_dom_elfloader.c +++ b/tools/libxc/xc_dom_elfloader.c @@ -57,7 +57,7 @@ static char *xc_dom_guest_type(struct xc_dom_image *dom, uint64_t machine = elf_uval(elf, elf->ehdr, e_machine); if ( dom->container_type == XC_DOM_HVM_CONTAINER && - dom->parms.phys_entry != UNSET_ADDR ) + dom->parms.phys_entry != UNSET_ADDR32 ) return "hvm-3.0-x86_32"; switch ( machine ) diff --git a/xen/common/libelf/libelf-dominfo.c b/xen/common/libelf/libelf-dominfo.c index 02d6cfbbb6..ec6944940e 100644 --- a/xen/common/libelf/libelf-dominfo.c +++ b/xen/common/libelf/libelf-dominfo.c @@ -503,6 +503,7 @@ elf_errorstatus elf_xen_parse(struct elf_binary *elf, parms->virt_hv_start_low = UNSET_ADDR; parms->p2m_base = UNSET_ADDR; parms->elf_paddr_offset = UNSET_ADDR; + parms->phys_entry = UNSET_ADDR32; /* Find and parse elf notes. */ count = elf_phdr_count(elf); diff --git a/xen/include/xen/libelf.h b/xen/include/xen/libelf.h index 6da4cc02b6..95b5370ab4 100644 --- a/xen/include/xen/libelf.h +++ b/xen/include/xen/libelf.h @@ -386,6 +386,7 @@ elf_errorstatus elf_reloc(struct elf_binary *elf); /* xc_libelf_dominfo.c */ #define UNSET_ADDR ((uint64_t)-1) +#define UNSET_ADDR32 ((uint32_t)-1) enum xen_elfnote_type { XEN_ENT_NONE = 0,